﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Medianamik.Core.Reflection;

namespace Medianamik.Core.Interfaces
{
    public interface IQueryableNode : IHierarchicalEntity
    {
        [ColumnMapping("NodeId")]
        new Guid ID { get; }

        [ColumnMapping("TypeId")]
        Guid NodeTypeID { get; }

        [ColumnMapping("ParentNodeId")]
        new Guid? ParentID { get; }

        [ColumnMapping("Path")]
        new string Path { get; }

        [ColumnMapping("Depth")] 
        new int Depth { get; }

        [ColumnMapping("Position")] 
        short Position { get; }

        [ColumnMapping("CreatedOn")] 
        DateTime CreatedOn { get; }
    }
}
